home *** CD-ROM | disk | FTP | other *** search
/ Developer CD Series 1997 February: Technology Seed / Mac Tech Seed Feb '97.toast / OpenDoc 1.2b2c1 / OpenDoc / Interfaces / C / ObjectNS.h < prev    next >
Encoding:
C/C++ Source or Header  |  1997-02-13  |  7.6 KB  |  244 lines  |  [TEXT/MPS ]

  1.  
  2. /*
  3.  * This file was generated by the SOM Compiler.
  4.  * FileName: ObjectNS.h.
  5.  * Generated using:
  6.  *     SOM Precompiler somipc: 2.18
  7.  *     SOM Emitter emith.dll: 2.33
  8.  */
  9.  
  10. /*
  11.  * 
  12.  *  Classes defined in this interface
  13.  * 
  14.  */
  15.  
  16.  
  17. #ifndef SOM_ODObjectNameSpace_h
  18. #define SOM_ODObjectNameSpace_h
  19.  
  20.  
  21. #include <som.h>
  22.  
  23. /*
  24.  * -- This emitter treats Method Tokens as Thunks by default.
  25.  * -- Use the sc modifier "nothunks" to change this default
  26.  */
  27. #undef somresolve_
  28. #define somresolve_(obj,mToken) ((somMethodProc*)((void)obj, mToken))
  29.  
  30. /*
  31.  * Define the class name as an object type
  32.  */
  33. #ifndef ODObjectNameSpace
  34. #define ODObjectNameSpace SOMObject
  35. #endif
  36. #include <NamSpac.h>
  37.  
  38. /*
  39.  * Start of user-defined types:
  40.  */
  41. #ifndef SOMClass
  42.     #define SOMClass SOMObject
  43. #endif /* SOMClass */
  44. #ifndef SOMObject
  45.     #define SOMObject SOMObject
  46. #endif /* SOMObject */
  47. #ifndef ODFrame
  48.     #define ODFrame SOMObject
  49. #endif /* ODFrame */
  50. #ifndef ODFacet
  51.     #define ODFacet SOMObject
  52. #endif /* ODFacet */
  53. #ifndef ODObject
  54.     #define ODObject SOMObject
  55. #endif /* ODObject */
  56. #ifndef ODExtension
  57.     #define ODExtension SOMObject
  58. #endif /* ODExtension */
  59. #ifndef ODNameSpace
  60.     #define ODNameSpace SOMObject
  61. #endif /* ODNameSpace */
  62. #ifndef ODStorageUnitView
  63.     #define ODStorageUnitView SOMObject
  64. #endif /* ODStorageUnitView */
  65. #ifndef ODObjectNameSpace
  66.     #define ODObjectNameSpace SOMObject
  67. #endif /* ODObjectNameSpace */
  68. #ifndef ODObjectIterator
  69.     #define ODObjectIterator SOMObject
  70. #endif /* ODObjectIterator */
  71.  
  72. /*
  73.  * End of user-defined types.
  74.  */
  75.  
  76. #define ODObjectNameSpace_MajorVersion 1
  77. #define ODObjectNameSpace_MinorVersion 0
  78.  
  79. /*
  80.  * External name shortening if required
  81.  */
  82. #ifdef SOM_USE_SHORT_EXTERNAL_NAMES
  83. #define ODObjectNameSpaceClassData d
  84. #endif /* SOM_USE_SHORT_EXTERNAL_NAMES */
  85. /*--------------Migration------------*/
  86.  
  87. #ifdef OLDIBMSOMAPISUPPORT
  88. #define ODObjectNameSpace_classObj somNewClassReference(ODObjectNameSpace)
  89. #define _ODObjectNameSpace ODObjectNameSpace_classObj
  90. #define ODObjectNameSpaceCClassData ODObjectNameSpaceClassData
  91. #define ODObjectNameSpaceNewClass(major,minor) somNewVersionedClassReference(ODObjectNameSpace,major,minor)
  92. #endif
  93.  
  94. /* define xxxMetaClass macro to facilitate (cls ## MetaClass) */
  95. #define ODObjectNameSpaceMetaClass SOMClass
  96.  
  97. #if PRAGMA_ALIGN_SUPPORTED
  98. #  pragma options align=power
  99. #endif
  100.  
  101. /*
  102.  * Declare the class data structure
  103.  */
  104. SOMEXTERN struct ODObjectNameSpaceClassDataStructure {
  105. #ifdef OLDIBMSOMAPISUPPORT
  106.     SOMAny            *classObject;    /* always zero, use somNewClassReference instead */
  107. #else
  108.     long zero;
  109. #endif
  110.     somStaticClassInfo *sci;
  111.     somDToken        instanceDataToken;
  112.     long reserved [3];
  113.     somMToken Register;
  114.     somMToken GetEntry;
  115.     somMToken CreateIterator;
  116.     somMToken reserved1;
  117. } SOMDLINK ODObjectNameSpaceClassData;
  118.  
  119. #if PRAGMA_ALIGN_SUPPORTED
  120. #  pragma options align=reset
  121. #endif
  122.  
  123. #if !defined(ODObjectNameSpace_Class_Source) && !defined(SOM_Module_objectns_Source)
  124. #if PRAGMA_IMPORT_SUPPORTED
  125. #pragma import list ODObjectNameSpaceClassData
  126. #endif
  127. #endif
  128.  
  129.  
  130. /*
  131.  * New macro for ODObjectNameSpace
  132.  */
  133. #define ODObjectNameSpaceNew() somNewObject(ODObjectNameSpace)
  134.  
  135. /*
  136.  * Override method: somUninit
  137.  */
  138. #define ODObjectNameSpace_somUninit(somSelf) \
  139.     SOMObject_somUninit(somSelf)
  140.  
  141. /*
  142.  * Override method: Purge
  143.  */
  144. #define ODObjectNameSpace_Purge(somSelf,ev,size) \
  145.     ODObject_Purge(somSelf,ev,size)
  146.  
  147. /*
  148.  * New Method: Register
  149.  */
  150. typedef void   (SOMLINK *somTD_ODObjectNameSpace_Register)(ODObjectNameSpace *somSelf, Environment *ev,
  151.         ODISOStr key,
  152.         ODObject* object);
  153. #define somMD_ODObjectNameSpace_Register "::ODObjectNameSpace::Register"
  154. #define ODObjectNameSpace_Register(somSelf,ev,key,object) \
  155.     (SOM_Resolve(somSelf, ODObjectNameSpace, Register) \
  156.     (somSelf,ev,key,object))
  157. #ifndef SOMGD_Register
  158.     #if (defined(_Register) || defined(__Register))
  159.         #undef _Register
  160.         #undef __Register
  161.         #define SOMGD_Register 1
  162.     #else
  163.         #define _Register ODObjectNameSpace_Register
  164.     #endif /* _Register */
  165. #endif /* SOMGD_Register */
  166.  
  167. /*
  168.  * New Method: GetEntry
  169.  */
  170. typedef ODBoolean   (SOMLINK *somTD_ODObjectNameSpace_GetEntry)(ODObjectNameSpace *somSelf, Environment *ev,
  171.         ODISOStr key,
  172.         ODObject** object);
  173. #define somMD_ODObjectNameSpace_GetEntry "::ODObjectNameSpace::GetEntry"
  174. #define ODObjectNameSpace_GetEntry(somSelf,ev,key,object) \
  175.     (SOM_Resolve(somSelf, ODObjectNameSpace, GetEntry) \
  176.     (somSelf,ev,key,object))
  177. #ifndef SOMGD_GetEntry
  178.     #if (defined(_GetEntry) || defined(__GetEntry))
  179.         #undef _GetEntry
  180.         #undef __GetEntry
  181.         #define SOMGD_GetEntry 1
  182.     #else
  183.         #define _GetEntry ODObjectNameSpace_GetEntry
  184.     #endif /* _GetEntry */
  185. #endif /* SOMGD_GetEntry */
  186.  
  187. /*
  188.  * New Method: CreateIterator
  189.  */
  190. typedef ODObjectIterator*   (SOMLINK *somTD_ODObjectNameSpace_CreateIterator)(ODObjectNameSpace *somSelf, Environment *ev);
  191. #define somMD_ODObjectNameSpace_CreateIterator "::ODObjectNameSpace::CreateIterator"
  192. #define ODObjectNameSpace_CreateIterator(somSelf,ev) \
  193.     (SOM_Resolve(somSelf, ODObjectNameSpace, CreateIterator) \
  194.     (somSelf,ev))
  195. #ifndef SOMGD_CreateIterator
  196.     #if (defined(_CreateIterator) || defined(__CreateIterator))
  197.         #undef _CreateIterator
  198.         #undef __CreateIterator
  199.         #define SOMGD_CreateIterator 1
  200.     #else
  201.         #define _CreateIterator ODObjectNameSpace_CreateIterator
  202.     #endif /* _CreateIterator */
  203. #endif /* SOMGD_CreateIterator */
  204. #ifndef SOM_DONT_USE_INHERITED_MACROS
  205. #define ODObjectNameSpace_GetName ODNameSpace_GetName
  206. #define ODObjectNameSpace_GetType ODNameSpace_GetType
  207. #define ODObjectNameSpace_GetParent ODNameSpace_GetParent
  208. #define ODObjectNameSpace_SetType ODNameSpace_SetType
  209. #define ODObjectNameSpace_Unregister ODNameSpace_Unregister
  210. #define ODObjectNameSpace_Exists ODNameSpace_Exists
  211. #define ODObjectNameSpace_WriteToFile ODNameSpace_WriteToFile
  212. #define ODObjectNameSpace_ReadFromFile ODNameSpace_ReadFromFile
  213. #define ODObjectNameSpace_WriteToStorage ODNameSpace_WriteToStorage
  214. #define ODObjectNameSpace_ReadFromStorage ODNameSpace_ReadFromStorage
  215. #define ODObjectNameSpace_InitObject ODObject_InitObject
  216. #define ODObjectNameSpace_HasExtension ODObject_HasExtension
  217. #define ODObjectNameSpace_AcquireExtension ODObject_AcquireExtension
  218. #define ODObjectNameSpace_ReleaseExtension ODObject_ReleaseExtension
  219. #define ODObjectNameSpace_IsEqualTo ODObject_IsEqualTo
  220. #define ODObjectNameSpace_SubClassResponsibility ODObject_SubClassResponsibility
  221. #define ODObjectNameSpace_somInit SOMObject_somInit
  222. #define ODObjectNameSpace_somInit SOMObject_somInit
  223. #define ODObjectNameSpace_somDuplicateReference SOMObject_somDuplicateReference
  224. #define ODObjectNameSpace_somCompareReference SOMObject_somCompareReference
  225. #define ODObjectNameSpace_somRelease SOMObject_somRelease
  226. #define ODObjectNameSpace_somFree SOMObject_somFree
  227. #define ODObjectNameSpace_somCanDelete SOMObject_somCanDelete
  228. #define ODObjectNameSpace_somGetClass SOMObject_somGetClass
  229. #define ODObjectNameSpace_somGetClassName SOMObject_somGetClassName
  230. #define ODObjectNameSpace_somGetSize SOMObject_somGetSize
  231. #define ODObjectNameSpace_somIsA SOMObject_somIsA
  232. #define ODObjectNameSpace_somRespondsTo SOMObject_somRespondsTo
  233. #define ODObjectNameSpace_somIsInstanceOf SOMObject_somIsInstanceOf
  234. #define ODObjectNameSpace_somDispatch SOMObject_somDispatch
  235. #define ODObjectNameSpace_somClassDispatch SOMObject_somClassDispatch
  236. #define ODObjectNameSpace_somCastObj SOMObject_somCastObj
  237. #define ODObjectNameSpace_somResetObj SOMObject_somResetObj
  238. #define ODObjectNameSpace_somPrintSelf SOMObject_somPrintSelf
  239. #define ODObjectNameSpace_somDumpSelf SOMObject_somDumpSelf
  240. #define ODObjectNameSpace_somDumpSelfInt SOMObject_somDumpSelfInt
  241. #endif /* SOM_DONT_USE_INHERITED_MACROS */
  242.  
  243. #endif       /* SOM_ODObjectNameSpace_h */
  244.